Host based printing, also referred to as "sleek" printing, is the concept of using the personal computers central processing unit (CPU) to render the printed image and send the rasterized image to the page printer. Currently there are two categories of printing systems, intelligent and dumb. The dumb category is the host based, or sleek, approach. The intelligent category differs in that it sends a mixture of rendered and non-rendered to the printer. It is similar to the concept of page description language (PDL) page printers like the Hewlett-Packard PCL page printers, in that the data sent across the I/O channel needs to be processed and rendered by the printer. A dumb printer only has to deal with placing an already rasterized image on paper, whereas the intelligent printer requires additional technology in the printer such as additional memory and processing power, to form the page for printing before starting the printing process.
One of the problems with host based printing is that it requires that the host be able to supply the rasterized data at the rate that the print engine consumes it. Otherwise, the printer runs out of data to put on the already moving paper causing a fault on the page. Such faults may be known by many terms such as "page punt", "real time fault", or "page fault".
Under the most popular host based printing technology for personal computers, when the dumb printer encounters a page fault, it informs the user that the last page did not print correctly. If the user chooses to continue printing this job, the faulted page is started over again. The page is rendered as before, however, the resulting raster data is scaled to a lower resolution just before it is sent to the printer. For example, if the page that caused the page fault was a 600.times.600 dpi page, the raster data of the recovered page will appear to be 300.times.600 dpi to the printer, even though it started out as a 600 dpi rendered page on the host. This "scaling" to a lower resolution is accomplished by selectively choosing what raster data to send, in total only sending one-half of the data that was rendered for the page. This reduction may be sufficient to allow successful printing of the page. However, in the event that the reduced page incurs another page fault, no further adjustments are made to increase the chance of success. The user is informed in an identical manner and the identical resolution reduction is repeated as long as the user continues to try re-printing the page. The problem with this approach to page fault recovery is two-fold. First, the user is never given an indication that trying to re-print will not have any greater success. Second, the resolution reduction method results in degradation of the printed page. Other solutions involving no degradation while improving the chances of reprinting a page successfully are desirable.